package com.gimi.cloud.bbp.app.consumer.feign.settlement;

import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import com.gimi.cloud.bbp.dto.mall.MallCartDTO;
import com.gimi.cloud.bbp.dto.mall.SettlementDTO;
import com.gimi.cloud.bbp.dto.order.OrderDTO;
import com.gimi.cloud.bbp.dto.order.ShOrderPayinfoDTO;

import feign.Headers;

/**
 * @author lilinfeng
 */
@FeignClient(name = "bbp-app-service")
public interface SettlementFeignService {

	@Headers({"Content-Type: application/json","Accept: application/json"})
    @RequestMapping(value = "/settlement/generatingClearingInformation", method = RequestMethod.POST)
	String generatingClearingInformation(SettlementDTO parseObject);

	@Headers({"Content-Type: application/json","Accept: application/json"})
    @RequestMapping(value = "/settlement/generatingOrder", method = RequestMethod.POST)
	String generatingOrder(SettlementDTO parseObject);

	@Headers({"Content-Type: application/json","Accept: application/json"})
    @RequestMapping(value = "/settlement/submissionOfPaymentStatus", method = RequestMethod.POST)
	String submissionOfPaymentStatus(ShOrderPayinfoDTO parseObject);

	@Headers({"Content-Type: application/json","Accept: application/json"})
    @RequestMapping(value = "/settlement/buyDirect", method = RequestMethod.POST)
	String buyDirect(MallCartDTO mallCart);

	@Headers({"Content-Type: application/json","Accept: application/json"})
    @RequestMapping(value = "/settlement/getPaymentParameters", method = RequestMethod.POST)
	String getPaymentParameters(OrderDTO order);

	@Headers({"Content-Type: application/json","Accept: application/json"})
    @RequestMapping(value = "/settlement/getOrderPayAmount", method = RequestMethod.POST)
	String getOrderPayAmount(OrderDTO order);
}